/**
 * 异步写文件，
 * 要求：使用promise封装实现
 *   1. 直接实例化promise
 *   2. 写文件封装一个函数 writeFilePromise
 *   3. 分离writeFilePromise到一个模块中，在另一个模块中调用测试
 */
const fs = require('fs')

//1. 直接实例化promise
const promise = new Promise(function(resolve,reject){
    fs.writeFile('demo3.txt','这是写入的内容',function(err){
        if(err){
            reject('写文件出错!')
        }else{
            resolve('写文件成功!')
        }
    })
})

promise.then(function(data){
    console.log(data)
}).catch(function(err){
    console.log(err)
})

//2.写文件封装一个函数 writeFilePromise
const writeFilePromise = function(fileUrl,content){
    const promise = new Promise(function(resolve,reject){
        fs.writeFile(fileUrl,content,function(err){
            if(err){
                reject('写文件出错!')
            }else{
                resolve('写文件成功!')
            }
        })
    })
    return promise
}

const promise1 = writeFilePromise('demo3.txt','这是封装内容操作')
promise1.then(data=>console.log(data).catch(err=>console.log(err)))